Categorical Combinators
نویسنده
چکیده
Our main aim is to present the connection between 2-calculus and Cartesian closed categories both in an untyped and purely syntactic setting. More specifically we establish a syntactic equivalence theorem between what we call categorical com-binatory logic and j-calculus with explicit products and projections, with fl and q-rules as well as with surjective pairing. "Combinatory logic" is of course inspired by Curry's combinatory logic, based on the well-known S, K,/. Our combinatory logic is "categorical" because its combinators and rules are obtained by extracting untyped information from Cartesian closed categories (looking at arrows only, thus forgetting about objects). Compiling J.-calculus into these combinators happens to be natural and provokes only n log n code expansion. Moreover categorical com-binatory logic is entirely faithful to /~-reduction where combinatory logic needs additional rather complex and unnatural axioms to be. The connection easily extends to the corresponding typed calculi, where typed categorical combinatory logic is a free Cartesian closed category where the notion of terminal object is replaced by the explicit manipulation of applying (a function to its argument) and coupling (arguments to build datas in products). Our syntactic equivalences induce equivalences at the model level. The paper is intended as a mathematical foundation for developing implementations of functional programming languages based on a "categorical abstract machine," as developed in a companion paper
منابع مشابه
Partial Categorical Multi-Combinators and Church-Rosser Theorems
Categorical Multi Combinators form a rewriting system developed with the aim of providing e cient implementations of lazy functional languages The core of the system of Categorical Multi Combinators consists of only four rewriting laws with a very low pattern matching complexity This system allows the equivalent of several reductions to be performed at once as functions form frames with all the...
متن کاملImplementing SASL using Categorical Multi-combinators
Categorical multi-combinators form a rewriting system developed with the aim of providing efficient implementations of lazy functional languages. The core of the system of categorical multi-combinators consists of only two rewriting laws with a very low pattern-matching complexity. This system allows the equivalent of several -reductions to be performed at once, and avoids the generation of tri...
متن کاملOn the Equivalence Between CMC and TIM
In this paper we present the equivalence between TIM a machine developed to implement lazy functional programming languages and the set of Categorical Multi Combinators a rewriting system developed with similar aims
متن کاملQuery Combinators
We introduce Rabbit, a combinator-based query language. Rabbit is designed to let data analysts and other accidental programmers query complex structured data. We combine the functional data model and the categorical semantics of computations to develop denotational semantics of database queries. In Rabbit, a query is modeled as a Kleisli arrow for a monadic container determined by the query ca...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- Information and Control
دوره 69 شماره
صفحات -
تاریخ انتشار 1986